//=========================================引脚接线================================================//
//   VCC         接       DC 5V/3.3V      //MPU9250电源正
//   GND         接          GND          //MPU9250电源地
//=======================================液晶屏数据线接线==========================================//
//   SCL         接          PA9         //MPU9250 IIC 时钟信号
//   SDA         接          PA10        //MPU9250 IIC 数据信号
//=================================================================================================//

#include "IMU_task.h"



#define IMU_TASK_PRIO 16
#define IMU_STK_SIZE 512
TaskHandle_t IMUTask_Handler;
void imu_task(void *pvParameters);

IMU_Data_t IMU_Data;

u32 num;
void task_IMU_Create(void)
{
	
	  xTaskCreate((TaskFunction_t )imu_task,            //任务函数
                (const char*    )"imu_task",          //任务名称
                (uint16_t       )IMU_STK_SIZE,        //任务堆栈大小
                (void*          )NULL,                  //传递给任务函数的参数
                (UBaseType_t    )IMU_TASK_PRIO,       //任务优先级
                (TaskHandle_t*  )&IMUTask_Handler);   //任务句柄    	
}

u8 buf[2048]; //定义全局变量

void imu_task(void *pvParameters)
{
#if COMPASS_TEST
	SEGGER_RTT_ConfigUpBuffer(1, "JScope_i4i4", &buf[0], sizeof(buf), SEGGER_RTT_MODE_BLOCK_IF_FIFO_FULL);//初始化RTT模块
#endif
	
	Compass_Data_Init(&IMU_Data.Compass_Data);
	Ellipsoid_fitting_Init(&IMU_Data.Compass_Data);
  Compass_Init_Filter(&IMU_Data.Compass_Data); 
	

	
	while(1)
	{
		
		Compass_Data_Processing(&IMU_Data.Compass_Data);
		//vTaskDelay(50);
	}
  
}

//IMU速度过慢，不灵敏

